﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace TunerController
{
    public static class TunerConstants
    {
        public const int WM_USER = 0x0400;
        public const int WM_BHCMD = WM_USER + 200;
        /// <summary>
        /// Переключить на канал с абсолютным порядковым номером (LParam = 1..999)
        /// </summary>
        public const int WMBH_CHNLN = WM_USER + 201;
        /// <summary>
        /// Режим набора номера канала (-, --, ---)
        /// </summary>
        public const int WMBH_CHNLMODE = WM_USER + 202;
        /// <summary>
        /// Переключить на следующий канал
        /// </summary>
        public const int WMBH_CHNLUP = WM_USER + 203;
        /// <summary>
        /// Переключить на предыдущий канал
        /// </summary>
        public const int WMBH_CHNLDOWN = WM_USER + 204;
        /// <summary>
        /// Возврат предыдущего канала
        /// </summary>
        public const int WMBH_CHNLRECALL = WM_USER + 205;
        /// <summary>
        /// Показать в OSD информацию о канале
        /// </summary>
        public const int WMBH_CHNLGETINFO = WM_USER + 206;
        /// <summary>
        /// Вызвать нажатие кнопки от 0 до 9 для переключения канала по правилу, установленному в WMBH_CHNLMODE. (LParam = 0..9)
        /// </summary>
        public const int WMBH_CHNL_09 = WM_USER + 207;
        /// <summary>
        /// Увеличить выбранный уровень
        /// </summary>
        public const int WMBH_VOLUMEUP = WM_USER + 210;
        /// <summary>
        /// Уменьшить выбранный уровень
        /// </summary>
        public const int WMBH_VOLUMEDOWN = WM_USER + 211;
        /// <summary>
        /// Триггер выбора текущей регулировки уровня (Brightness, Contrast, Hue, Saturation, Sharpness, Gain)
        /// </summary>
        public const int WMBH_SELVOLMODE = WM_USER + 212;
        /// <summary>
        /// Триггер выключить/включить звук
        /// </summary>
        public const int WMBH_MUTE = WM_USER + 213;
        /// <summary>
        /// Установить значение яркости (LParam = 0..255)
        /// </summary>
        public const int WMBH_SETBRITN = WM_USER + 214;
        /// <summary>
        /// Установить значение контрастности (LParam = 0..127)
        /// </summary>
        public const int WMBH_SETCONTR = WM_USER + 215;
        /// <summary>
        /// Установить значение насыщенности цвета (LParam = 0..127)
        /// </summary>
        public const int WMBH_SETSAT = WM_USER + 216;
        /// <summary>
        /// Установить значение оттенка цвета (LParam = -128..127), только для PAL/NTSC
        /// </summary>
        public const int WMBH_SETHUE = WM_USER + 217;
        /// <summary>
        /// Установить значение резкости  (LParam = -8..7)
        /// </summary>
        public const int WMBH_SETSHR = WM_USER + 218;
        /// <summary>
        /// Установить значение уровня видеоусиления (LParam = 0..300)
        /// </summary>
        public const int WMBH_SETGAIN = WM_USER + 219;
        /// <summary>
        /// Триггер переключения режимов TV/FM/CVBS/SVideo
        /// </summary>
        public const int WMBH_CHANGESOURCE = WM_USER + 220;
        /// <summary>
        /// Триггер переключения режимов TV/FM
        /// </summary>
        public const int WMBH_CHANGETVFM = WM_USER + 221;
        /// <summary>
        /// Переключить в режим TV
        /// </summary>
        public const int WMBH_CHANGETV = WM_USER + 222;
        /// <summary>
        /// Переключить в режим FM
        /// </summary>
        public const int WMBH_CHANGEFM = WM_USER + 223;
        /// <summary>
        /// Переключить в режим VHS (CVBS)
        /// </summary>
        public const int WMBH_CHANGECVBS = WM_USER + 224;
        /// <summary>
        /// Переключить в режим S-VHS (SVideo)
        /// </summary>
        public const int WMBH_CHANGESVID = WM_USER + 225;
        /// <summary>
        /// Триггер переключения режимов тюнера DVB/Analog
        /// </summary>
        public const int WMBH_CHANGEDVB = WM_USER + 226;
        /// <summary>
        /// Триггер переключения полноэкранного-оконного режима
        /// </summary>
        public const int WMBH_FULLSCREEN = WM_USER + 230;
        /// <summary>
        /// Триггер переключения поверх всех окон для главной панели
        /// </summary>
        public const int WMBH_SETONTOP = WM_USER + 231;
        /// <summary>
        /// Триггер стоп-кадра
        /// </summary>
        public const int WMBH_FREEZE = WM_USER + 232;
        /// <summary>
        /// Триггер переключения поверх всех окон для видеоокна
        /// </summary>
        public const int WMBH_SETONTOPVW = WM_USER + 233;
        /// <summary>
        /// Запустить Таймшифт
        /// </summary>
        public const int WMBH_TSSTART = WM_USER + 234;
        /// <summary>
        /// Остановить Таймшифт
        /// </summary>
        public const int WMBH_TSSTOP = WM_USER + 235;
        /// <summary>
        /// Приостановить Таймшифт
        /// </summary>
        public const int WMBH_TSPAUSE = WM_USER + 236;
        /// <summary>
        /// Продолжить Таймшифт
        /// </summary>
        public const int WMBH_TSCONTINUE = WM_USER + 237;
        /// <summary>
        /// Перемотка Таймшифт на шаг вперед (LParam = интервал перемотки в миллисекундах, минимум = 5000)
        /// </summary>
        public const int WMBH_TSFORWARD = WM_USER + 238;
        /// <summary>
        /// Перемотка Таймшифт на шаг назад (LParam = интервал перемотки в миллисекундах, минимум = 5000)
        /// </summary>
        public const int WMBH_TSBACKWARD = WM_USER + 239;
        /// <summary>
        /// Сбросить параметры видеомикшера в значение по умолчанию
        /// </summary>
        public const int WMBH_RESETVIDEO = WM_USER + 240;
        /// <summary>
        /// Изменить режим вывода TV стереоканалов (A2 CH1/CH2 или NICAM M1/M2 или BTSC SAP)
        /// </summary>
        public const int WMBH_SETA2CHNL = WM_USER + 241;
        /// <summary>
        /// Установка таймера на выключение
        /// </summary>
        public const int WMBH_SETSLEEP = WM_USER + 242;
        /// <summary>
        /// Триггер включения-выключения режима телетекста
        /// </summary>
        public const int WMBH_TELETEXT = WM_USER + 250;
        /// <summary>
        /// Триггер включения-выключения режима сёрфинга каналов
        /// </summary>
        public const int WMBH_SURFING = WM_USER + 251;
        /// <summary>
        /// Показать текущую телепередачу в OSD
        /// </summary>
        public const int WMBH_TVGUIDEC = WM_USER + 252;
        /// <summary>
        /// Показать предыдущую телепередачу в OSD
        /// </summary>
        public const int WMBH_TVGUIDEP = WM_USER + 253;
        /// <summary>
        /// Показать следующую телепередачу в OSD
        /// </summary>
        public const int WMBH_TVGUIDEN = WM_USER + 254;
        /// <summary>
        /// Триггер запустить-остановить видеозапись
        /// </summary>
        public const int WMBH_RECV = WM_USER + 260;
        /// <summary>
        /// Триггер запустить-остановить аудиозапись
        /// </summary>
        public const int WMBH_RECA = WM_USER + 262;
        /// <summary>
        /// Сделать единичный снимок
        /// </summary>
        public const int WMBH_RECSNAP = WM_USER + 263;
        /// <summary>
        /// Триггер запустить-остановить формирование серии снимков
        /// </summary>
        public const int WMBH_RECSNAPM = WM_USER + 264;
        /// <summary>
        /// Триггер пауза-продолжить запись
        /// </summary>
        public const int WMBH_RECPAUSE = WM_USER + 265;
        /// <summary>
        /// Быстрый выбор лимита времени записи
        /// </summary>
        public const int WMBH_RECLIMIT = WM_USER + 266;
        /// <summary>
        /// Запустить видеозапись
        /// </summary>
        public const int WMBH_RECVSTART = WM_USER + 270;
        /// <summary>
        /// Остановить видеозапись
        /// </summary>
        public const int WMBH_RECVSTOP = WM_USER + 271;
        /// <summary>
        /// Запустить аудиозапись
        /// </summary>
        public const int WMBH_RECASTART = WM_USER + 274;
        /// <summary>
        /// Остановить аудиозапись
        /// </summary>
        public const int WMBH_RECASTOP = WM_USER + 275;
        /// <summary>
        /// Запустить формирование серии снимков
        /// </summary>
        public const int WMBH_RECMULTISTART = WM_USER + 276;
        /// <summary>
        /// Остановить формирование серии снимков
        /// </summary>
        public const int WMBH_RECMULTISTOP = WM_USER + 277;
        /// <summary>
        /// Установить паузу записи
        /// </summary>
        public const int WMBH_RECPAUSEON = WM_USER + 278;
        /// <summary>
        /// Снять паузу записи
        /// </summary>
        public const int WMBH_RECPAUSEOFF = WM_USER + 279;
        /// <summary>
        /// Установить уровень громкости (LParam = 0..65535)
        /// </summary>
        public const int WMBH_SETVOLUME = WM_USER + 280;
        /// <summary>
        /// Получить текущий уровень громкости (использовать SendMessage, Result = 0..65535)
        /// </summary>
        public const int WMBH_GETVOLUME = WM_USER + 281;
        /// <summary>
        /// Выключить/включить глобальный звук (Выключить: LParam = 1, включить: LParam = 0)
        /// </summary>
        public const int WMBH_SETMUTE = WM_USER + 282;
        /// <summary>
        /// Выключить/включить локальный звук (Выключить: LParam = 1, включить: LParam = 0)
        /// </summary>
        public const int WMBH_SETMUTESAFE = WM_USER + 283;
        /// <summary>
        /// Получить новер версии ПО (использовать SendMessage)
        /// </summary>
        public const int WMBH_GETVERSION = WM_USER + 285;
        /// <summary>
        /// Триггер свернуть ПО в системный трей/восстановить в нормальный режим
        /// </summary>
        public const int WMBH_SLEEPWAKE = WM_USER + 290;
        /// <summary>
        /// Выйти из программы
        /// </summary>
        public const int WMBH_EXIT = WM_USER + 291;
        /// <summary>
        /// Перевести Windows в ждущий режим
        /// </summary>
        public const int WMBH_SUSPEND = WM_USER + 292;
        /// <summary>
        /// Перевести Windows в режим Хибернейт (спящий режим)
        /// </summary>
        public const int WMBH_HIBERNATE = WM_USER + 293;
        /// <summary>
        /// Выключить компютер
        /// </summary>
        public const int WMBH_SHUTDOWN = WM_USER + 294;
        /// <summary>
        /// Cвернуть ПО в системный трей
        /// </summary>
        public const int WMBH_SLEEP = WM_USER + 295;
        /// <summary>
        /// Восстановить ПО в нормальный режим из трея
        /// </summary>
        public const int WMBH_WAKE = WM_USER + 296;
    }
}
